home *** CD-ROM | disk | FTP | other *** search
/ Macworld Expo - Develope…Central & Net Innovations / Developer Central and Net Innovators (MacWorld Expo) (January 1999).iso / Developer Central / Bowers Development / Demo AppMaker / Examples / C⁄C++ OS8 / Everything / ModalBars.cp < prev    next >
Encoding:
Text File  |  1998-09-06  |  6.5 KB  |  221 lines  |  [TEXT/CWIE]

  1. // ModalBars.cp -- Modal dialog
  2.  
  3. #include <Types.h>
  4. #include <Quickdraw.h>
  5. #include <Controls.h>
  6. #include <Dialogs.h>
  7. #include <Events.h>
  8. #include <Lists.h>
  9. #include <Menus.h>
  10. #include <TextEdit.h>
  11. #include <Appearance.h>
  12.  
  13. #include "ResourceDefs.h"
  14. #include "Miscellany.h"
  15. #include "ControlUtils.h"
  16.  
  17. #include "ModalBars.h"
  18.  
  19. #define kOKButton        1
  20. #define kBarsPanel        2
  21. #define kScrollBarsLayer        3
  22. #define kStandardScroll        4
  23. #define kGraphicScroll        5
  24. #define kSliderScroll        6
  25. #define kTickMarksScroll        7
  26. #define kNonDirectionalScroll        8
  27. #define kLittleArrowsScroll        9
  28. #define kSpinnerScroll        10
  29. #define kVolumeControlScroll        11
  30. #define kJimSSliderScroll        12
  31. #define kProgressBarsLayer        13
  32. #define kStandard2Bar            14
  33. #define kIndeterminateBar            15
  34. #define kChasingArrowsBar            16
  35. #define kRectangleBar            17
  36. #define kRoundRectBar            18
  37. #define kBarberPoleBar            19
  38. #define kRoundBarberBar            20
  39.  
  40.  
  41. //----------
  42. // static
  43. Boolean        CModalBars::GetModalBars (
  44.     DModalBarsData*        ioData)
  45. {
  46.     Boolean            result = false;
  47.     CModalBars*        dialog = new CModalBars;
  48.  
  49.     result = dialog->RunModal (DLOG_ModalBars, ioData);
  50.  
  51.     delete dialog;
  52.  
  53.     return result;
  54. }
  55.  
  56. //----------
  57. CModalBars::CModalBars ()
  58. {
  59.     mData = nil;
  60. }
  61.  
  62. //----------
  63. CModalBars::~CModalBars ()
  64. {
  65. }
  66.  
  67. //----------
  68. void    CModalBars::FinishMake ()
  69. {
  70.     mOKHandle = GetControlItem (kOKButton);
  71.     SetDefaultState (mOKHandle, true);
  72.     ::SetDialogDefaultItem (mDialog, kOKButton);
  73.     mBarsHandle = GetControlItem (kBarsPanel);
  74.     mStandardHandle = GetControlItem (kStandardScroll);
  75.     mGraphicHandle = GetControlItem (kGraphicScroll);
  76.     mSliderHandle = GetControlItem (kSliderScroll);
  77.     mTickMarksHandle = GetControlItem (kTickMarksScroll);
  78.     mNonDirectionalHandle = GetControlItem (kNonDirectionalScroll);
  79.     mLittleArrowsHandle = GetControlItem (kLittleArrowsScroll);
  80.     mSpinnerHandle = GetControlItem (kSpinnerScroll);
  81.     mVolumeControlHandle = GetControlItem (kVolumeControlScroll);
  82.     mJimSSliderHandle = GetControlItem (kJimSSliderScroll);
  83.     mStandard2Handle = GetControlItem (kStandard2Bar);
  84.     mIndeterminateHandle = GetControlItem (kIndeterminateBar);
  85.     SetIndeterminateState (mIndeterminateHandle, true);
  86.     mChasingArrowsHandle = GetControlItem (kChasingArrowsBar);
  87.     mRectangleHandle = GetControlItem (kRectangleBar);
  88.     mRoundRectHandle = GetControlItem (kRoundRectBar);
  89.     mBarberPoleHandle = GetControlItem (kBarberPoleBar);
  90.     mRoundBarberHandle = GetControlItem (kRoundBarberBar);
  91. }
  92.  
  93. //----------
  94. void    CModalBars::ConnectToData (
  95.     AMSignaler*        inData)
  96. {
  97.     AMDialog::ConnectToData (inData);
  98.     mData = (DModalBarsData*) inData;
  99.  
  100.     SetControlValue (mBarsHandle, mData->GetBars2 ());
  101.     SetLayerGroupValue (mBarsHandle, GetControlValue (mBarsHandle));
  102.     SetControlValue (mStandardHandle, mData->GetStandard5 ());
  103.     SetControlValue (mGraphicHandle, mData->GetGraphic4 ());
  104.     SetControlValue (mSliderHandle, mData->GetSlider2 ());
  105.     SetControlValue (mTickMarksHandle, mData->GetTickMarks2 ());
  106.     SetControlValue (mNonDirectionalHandle, mData->GetNonDirectional2 ());
  107.     SetControlValue (mLittleArrowsHandle, mData->GetLittleArrows2 ());
  108.     SetControlValue (mSpinnerHandle, mData->GetSpinner2 ());
  109.     SetControlValue (mVolumeControlHandle, mData->GetVolumeControl2 ());
  110.     SetControlValue (mJimSSliderHandle, mData->GetJimSSlider2 ());
  111.     SetControlValue (mStandard2Handle, mData->GetStandard6 ());
  112.     SetControlValue (mIndeterminateHandle, mData->GetIndeterminate2 ());
  113.     SetControlValue (mChasingArrowsHandle, mData->GetChasingArrows2 ());
  114.     SetControlValue (mRectangleHandle, mData->GetRectangle2 ());
  115.     SetControlValue (mRoundRectHandle, mData->GetRoundRect2 ());
  116.     SetControlValue (mBarberPoleHandle, mData->GetBarberPole2 ());
  117.     SetControlValue (mRoundBarberHandle, mData->GetRoundBarber2 ());
  118. }
  119.  
  120. //----------
  121. void    CModalBars::DataChanged (
  122.     long        inDataID)
  123. {
  124.     if (inDataID == idBars2) {
  125.         SetControlValue (mBarsHandle, mData->GetBars2 ());
  126.         SetLayerGroupValue (mBarsHandle, mData->GetBars2 ());
  127.     }
  128.     if (inDataID == idStandard5) {
  129.         SetControlValue (mStandardHandle, mData->GetStandard5 ());
  130.     }
  131.     if (inDataID == idGraphic4) {
  132.         SetControlValue (mGraphicHandle, mData->GetGraphic4 ());
  133.     }
  134.     if (inDataID == idSlider2) {
  135.         SetControlValue (mSliderHandle, mData->GetSlider2 ());
  136.     }
  137.     if (inDataID == idTickMarks2) {
  138.         SetControlValue (mTickMarksHandle, mData->GetTickMarks2 ());
  139.     }
  140.     if (inDataID == idNonDirectional2) {
  141.         SetControlValue (mNonDirectionalHandle, mData->GetNonDirectional2 ());
  142.     }
  143.     if (inDataID == idLittleArrows2) {
  144.         SetControlValue (mLittleArrowsHandle, mData->GetLittleArrows2 ());
  145.     }
  146.     if (inDataID == idSpinner2) {
  147.         SetControlValue (mSpinnerHandle, mData->GetSpinner2 ());
  148.     }
  149.     if (inDataID == idVolumeControl2) {
  150.         SetControlValue (mVolumeControlHandle, mData->GetVolumeControl2 ());
  151.     }
  152.     if (inDataID == idJimSSlider2) {
  153.         SetControlValue (mJimSSliderHandle, mData->GetJimSSlider2 ());
  154.     }
  155.     if (inDataID == idStandard6) {
  156.         SetControlValue (mStandard2Handle, mData->GetStandard6 ());
  157.     }
  158.     if (inDataID == idIndeterminate2) {
  159.         SetControlValue (mIndeterminateHandle, mData->GetIndeterminate2 ());
  160.     }
  161.     if (inDataID == idChasingArrows2) {
  162.         SetControlValue (mChasingArrowsHandle, mData->GetChasingArrows2 ());
  163.     }
  164.     if (inDataID == idRectangle2) {
  165.         SetControlValue (mRectangleHandle, mData->GetRectangle2 ());
  166.     }
  167.     if (inDataID == idRoundRect2) {
  168.         SetControlValue (mRoundRectHandle, mData->GetRoundRect2 ());
  169.     }
  170.     if (inDataID == idBarberPole2) {
  171.         SetControlValue (mBarberPoleHandle, mData->GetBarberPole2 ());
  172.     }
  173.     if (inDataID == idRoundBarber2) {
  174.         SetControlValue (mRoundBarberHandle, mData->GetRoundBarber2 ());
  175.     }
  176. }
  177.  
  178.  
  179. //----------
  180. void    CModalBars::DoItem (
  181.     SInt16        inItemHit)
  182. {
  183.     switch (inItemHit) {
  184.     case kOKButton:
  185.             SetResult (true);
  186.         break;
  187.     case kBarsPanel:
  188.             mData->SetBars2 (GetControlValue (mBarsHandle));
  189.             SetLayerGroupValue (mBarsHandle, GetControlValue (mBarsHandle));
  190.         break;
  191.     case kStandardScroll:
  192.             mData->SetStandard5 (GetControlValue (mStandardHandle));
  193.         break;
  194.     case kGraphicScroll:
  195.             mData->SetGraphic4 (GetControlValue (mGraphicHandle));
  196.         break;
  197.     case kSliderScroll:
  198.             mData->SetSlider2 (GetControlValue (mSliderHandle));
  199.         break;
  200.     case kTickMarksScroll:
  201.             mData->SetTickMarks2 (GetControlValue (mTickMarksHandle));
  202.         break;
  203.     case kNonDirectionalScroll:
  204.             mData->SetNonDirectional2 (GetControlValue (mNonDirectionalHandle));
  205.         break;
  206.     case kLittleArrowsScroll:
  207.             mData->SetLittleArrows2 (GetControlValue (mLittleArrowsHandle));
  208.         break;
  209.     case kSpinnerScroll:
  210.             mData->SetSpinner2 (GetControlValue (mSpinnerHandle));
  211.         break;
  212.     case kVolumeControlScroll:
  213.             mData->SetVolumeControl2 (GetControlValue (mVolumeControlHandle));
  214.         break;
  215.     case kJimSSliderScroll:
  216.             mData->SetJimSSlider2 (GetControlValue (mJimSSliderHandle));
  217.         break;
  218.  
  219.     } // switch
  220. }
  221.